package q860_lemonadeChange;

public class Solution {
    /*
    简单的贪心做法
    对于来购买的人
    1 如果是5美元 则只需要fiveBucks++
    2 如果是10美元 则判断是否有五美元 没有则false 否则TenBucks++ five--
    3 如果是20美元 那么必然是先看是否有10美元和5美元来找零 如果没有10美元 则再使用三个五美元
     */
    public boolean lemonadeChange(int[] bills) {
        int fiveBucks = 0, TenBucks = 0;
        for (int i = 0; i < bills.length; i++) {
            if (bills[i] == 10) {
                if (fiveBucks <= 0) {
                    return false;
                }
                TenBucks++;
                fiveBucks--;
            }else if (bills[i] == 20) {
                if (TenBucks >= 1 && fiveBucks >= 1) {
                    TenBucks--;
                    fiveBucks--;
                }else if (TenBucks < 1 && fiveBucks >= 3) {
                    fiveBucks = fiveBucks - 3;
                }else {
                    return false;
                }

            }else {
                fiveBucks++;
            }
        }
        return true;

    }
}
